
import axios from "axios";
import { ElNotification } from 'element-plus'
// 配置生产环境和开发环境
axios.defaults.baseURL = import.meta.env.VITE_BASE_API;
console.log('环境：', import.meta.env.NODE_ENV);
console.log('服务端：', import.meta.env.VITE_BASE_API);


// 创建Axios实例
const service = axios.create({
    baseURL: import.meta.env.VITE_BASE_API, // API基础地址
    timeout: 5000, // 请求超时时间
});

// 请求拦截器
service.interceptors.request.use(
    config => {
        console.log("已经拦截了");
        // 在发送请求之前做些什么，例如添加token
        config.headers.Authorization = `Bearer ${localStorage.getItem('token')}`;
        return config;
    },
    error => {
        // 对请求错误做点什么
        console.log(error);
        return Promise.reject(error);
    }
);

// 响应拦截器
service.interceptors.response.use(
    response => {
        // 对响应数据做点什么

        const  result =response.data
        if(!result.success){
            ElNotification({
                title: 'Warning',
                message: result.message,
                type: 'warning',
            })
        }
        return response.data;
    },
    error => {
        // 对响应错误做点什么
        console.log(error);
        ElNotification({
            title: 'Error',
            message: error,
            type: 'error',
        })
        return Promise.reject(error);
    }
);


export  default  service;